import events from './events'
import MultiTab from './MultiTab'
import './index.less'

const api = {
    /**
     * open new tab on route fullPath
     * @param config
     */
    open: function(config) {
        events.$emit('open', config)
    },
    rename: function(key, name) {
        events.$emit('rename', { key: key, name: name })
    },
    /**
     * close current page
     */
    closeCurrentPage: function() {
        this.close()
    },
    /**
     * close route fullPath tab
     * @param config
     */
    close: function(config) {
        events.$emit('close', config)
    }
}

MultiTab.install = function(Vue) {
    if (Vue.prototype.$multiTab) {
        return
    }
    api.instance = events
    Vue.prototype.$multiTab = api
    Vue.component('multi-tab', MultiTab)
}

export default MultiTab
